package top.lyjwn.todo.weinxin.api.applet;

import com.alibaba.fastjson2.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import top.lyjwn.todo.weinxin.api.url.WXAppletUrl;
import top.lyjwn.todo.weinxin.applet.AppletAccessToken;
import top.lyjwn.todo.common.utils.http.HttpUtil;

/**
 * 组合模板并添加至帐号下的个人模板库
 *
 * @author luoyujie
 */
@Component
public class TMAddTemplate {

    @Autowired
    private WXAppletUrl wxAppletUrl;


    public TMAddTemplate() {
    }


    public String getUrl(AppletAccessToken accessToken) {

        String url = wxAppletUrl.getTEMPLATE_MESSAGE_ADD_TEMPLATE().replace("#{ACCESS_TOKEN}", accessToken.getAccess_token());
        return url;
    }


    /**
     * @param id              模板标题id，可通过接口获取，也可登录小程序后台查看获取
     * @param keyword_id_list 开发者自行组合好的模板关键词列表，关键词顺序可以自由搭配（例如[3,5,4]或[4,5,3]），最多支持10个关键词组合
     * @return
     */
    public String run(AppletAccessToken accessToken,String id, Integer[] keyword_id_list) {
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("id", id);
        jsonObject.put("keyword_id_list", keyword_id_list);
        String postData = jsonObject.toJSONString();
        String result = HttpUtil.request(getUrl(accessToken), HttpUtil.METHOD_POST, postData);
        return result;
    }

}
